package com.weimob.mcloud.wechatwork.customer.service.user.module.bo.customer;

import com.weimob.mcloud.wechatwork.customer.service.user.module.bo.process.CustomerStageBO;
import com.weimob.mcloud.wechatwork.customer.service.user.module.bo.tag.TagBO;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * @author benben.li01
 * @date 2021/1/16
 * @since v5.0
 */
@Data
public class ExternalUserListBO implements Serializable {
    private static final long serialVersionUID = -7469572965685100373L;

    /**
     * corpId
     */
    private String corpId;

    /**
     * 客户分库分表id
     */
    private String customerId;

    /**
     * 外部联系人wid
     */
    private Long externalUserWid;

    /**
     * 外部联系人id
     */
    private String externalUserId;

    /**
     * 外部联系人名称
     */
    private String externalUserName;

    /**
     * 外部联系人性别 0:未知  1：男性 2：女性
     */
    private Integer gender;

    /**
     * 外部联系人头像
     */
    private String avatar;

    /**
     * 最近添加方式
     */
    private String addWayDesc;

    /**
     * 二级添加方式描述
     */
    private String subAddWayDesc;
    /**
     * 最近添加方式
     */
    private Integer addWay;

    /**
     * 二级添加方式描述
     */
    private Integer subAddWay;

    /**
     * 成员列表
     */
    private List<SimpleUserListBO> userList;

    /**
     * 标签集合
     */
    private List<SimpleTagListBO> tagList;

    /**
     * 客户标签
     */
    private List<TagBO> tagBOList;

    /**
     * 最近添加时间
     */
    private Date recentlyAddTime;

    /**
     * 首次添加时间
     */
    private Date firstAddTime;

    /**
     * 用户和员工的好友个数
     */
    private Integer friendCount;

    /**
     * 用户是否流失
     */
    private Boolean flowStatus;

    private String unionid;

    /**
     * 外部联系人归属门店
     */
    private String belongToStoreName;

    /**
     * 手机号 customer表
     */
    private String phone;

    /**
     * 手机号 customer_detail表
     */
    private String mobiles;

    /**
     * 是否来自于 微商城/新零售
     */
    private String otherChannel;

    /**
     * 外部联系人类型 1:微信用户 2:企业微信用户
     */
    private Integer externalUserType;

    /**
     * 消费总金额
     */
    private BigDecimal totalConsumeAmount;

    /**
     * 消费总次数
     */
    private Long consumeTimes;

    /**
     * 客户关联员工状态 0-有效 1-无效
     */
    private Integer status;

    /**
     * 所有阶段
     */
    private List<CustomerStageBO> stages;

    /**
     * 客户星级
     */
    private Integer customerRating;
}
